#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QColorDialog>

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);
}

MainWindow::~MainWindow()
{
    delete ui;
}


void MainWindow::on_pushButton_clicked()
{
    // 可以手动创建
//    QColorDialog* colorDialog = new QColorDialog(this);
//    colorDialog->exec();
//    delete colorDialog;
    // 直接使用 getColor 函数，函数的返回值就是用户所选择的颜色
    // 第一个参数是初始默认的颜色，第二个参数是父元素，第三个参数是标题
    QColor color = QColorDialog::getColor(QColor(0,255,0), this, "请选择背景颜色");
    // color 就是用户选择的颜色
    // 可以使用 sprintf 实现字符串拼接，存储到 style 数组中
    char style[1024] = {0};
    sprintf(style, "background-color:rgb(%d,%d,%d)", color.red(), color.green(), color.blue());
    // 使用 QSS 的方式更改背景颜色，设置进 StyleSheet 中
    this->setStyleSheet(style);
}
